var gulp=require("gulp"),
	webserver=require("gulp-webserver"),
	livereload=require("gulp-livereload"),
	sass=require("gulp-ruby-sass"),
	uglify=require("gulp-uglify"),
	rename=require("gulp-rename"),
	sourcemap = require("gulp-sourcemaps")
	
	//设置自动更新的任务
	gulp.task("webserver",function(){
		gulp.src("dest")
		.pipe(webserver({
			livereload:true,
			open:true
		}));
	});
	//把开发环境中的html发布至发布环境下
	gulp.task("html",function(){
		return gulp.src("src/**/*.html")
		.pipe(gulp.dest("dest"))
	})
	
	
	//引入sass文件
	gulp.task("sass",function(){
		//设置sass文件的源路径
		return sass("src/sass/*.scss",{style:"compressed"})
		.on("error",function(err){
			console.log(err)
		})//如果出错，打印错误信息
		//设置css文件的输出目录，注意：只需到目录即可，不写*.css
		.pipe(gulp.dest("dest/css"))
	})
	//脚本文件压缩&重命名&来源地图
	gulp.task("js",function(){
		return gulp.src("src/js/*.js")
		.pipe(sourcemap.init())
		.pipe(rename({suffix:".min"}))//添加后缀
		.pipe(uglify())
		.pipe(sourcemap.write("map"))
		.pipe(gulp.dest("dest/js"))//输出路径
	})
	
	
	//监听任务
	gulp.task("watch",function(){
		gulp.watch("src/**/*.html",["html"])
		gulp.watch("src/sass/*.scss",["sass"])
		gulp.watch("src/js/*.js",["js"])
	})
	//默认任务
	gulp.task("default",["webserver","html","sass","js","watch"])
